#include <54func.h>
int main(int argc,char *argv[])
{
    // ./12_dup file  --> 利用dup实现重定向，拷贝文件描述符
    ARGS_CHECK(argc,2);
    int oldfd = open(argv[1],O_RDWR);
    ERROR_CHECK(oldfd,-1,"open");
    printf("oldfd = %d\n",oldfd);

    int newfd = dup(oldfd);//此刻newfd指向的跟oldfd是同一个文件描述符
    printf("newfd = %d\n",newfd);

    //oldfd与newfd指向的文件描述符虽然不同，但是可以通过不同的文件描述符去查找到同一个文件对象
    //共享同一个文件对象，同一个偏移量
    write(oldfd,"Hello",5);
    write(newfd,"World",5);
    return 0;
}
